Gradient boosting machines can be used to build models for classification of entities using a set of previously classified entities. To classify a new entity, the values of the entity's features can be determined and those feature values can be used to traverse the classification model. In contrast to certain other techniques for building classification models, gradient boosting machines can build a classification model that is an ensemble of smaller models, such as decision trees. Each of the smaller models can output a response score that depends on one or more different features of the new entity. While each of the smaller models may not be accurate in classifying new entities by itself, the classification model can provide accuracy by aggregating and weighting hundreds or thousands of smaller models.
While gradient boosting machines can build accurate classification models, it can be difficult or impractical to identify which features had the greatest effect on the classification outcome. One cause of the difficulty in determining the classification reasons is the composition of the classification model, which can include hundreds or thousands of smaller models, where each of the smaller models can depend on more than one feature, and more than one of the smaller models can depend on the same feature. Accordingly, there is a need for improved processes for determining reason codes from gradient boosting machines.